6 输出文件格式说明
DS-PAW 2023A版本默认生成的输出文件 JSON 文件可直接通过 Device Studio 进行分析处理,另输出文件新增了 hdf5 格式, 可下载 vitables (python环境下执行pip install vitables)或 HDFView 查看 hdf5 格式文件,使用 辅助工具使用教程 提供的 python 脚本进行结果分析。
除电荷密度文件 rho.h5 、溶剂束缚电荷密度输出文件 rhoBound.h5 、 其余输出文件的文件名取决于 task 类型,现DS-PAW 支持 task 类型有14种,对应的h5文件名分别为: relax.h5 、 scf.h5 、 band.h5 、 dos.h5 、 potential.h5 、 elf.h5 、pcharge.h5、 frequency.h5 、 elastic.h5 、 neb.h5 、 phonon.h5 、 aimd.h5 、 epsilon.h5 、 wannier.h5 。
DS-PAW 2023A暂可支持 .json 格式的输出文件,但不建议用户继续使用该格式分析结果,DS-PAW会在迭代版本过程中完全摒弃json格式的输出,停止对该种格式的维护与升级。用户可通过 io.outJsonFile
参数控制 json 文件是否输出。
6.1 relax.h5
relax.h5 为 task = relax 时的输出文件,当 task类型为其他时,该文件不输出。
relax.h5 至少包含9个基本结构体:
(1) AtomInfo 中保存体系的基本结构信息,如晶胞大小,原子位置等;
(2) Eigenvalue 中保存能带计算数量、自旋信息、k点数量及坐标、各能带在各k点下对应的轨道占据数及能量本征值;
(3) Electron 中保存体系总的价电子数;
(4) Energy 中保存总能及费米能;
(5) Force 中保存弛豫过程每个原子的受力;
(6) MagInfo 中保存原子总的磁矩信息,若打开了投影则保存投影磁矩信息;
(7) RelaxInfo 中保存体系在结构弛豫过程中每步的应力及压力数据;
(8) Stress 中保存晶胞各方向的应力大小,体系压力大小;
(9) Structures 中保存弛豫过程中结构和磁矩数据;
6.2 scf.h5
scf.h5 为 task = scf 时的输出文件,当 task类型为其他时,该文件不输出。
scf.h5 至少包含8个基本结构体,其基本信息与 relax.h5 一致:
task = scf 下可通过 sys
和 io
等参数控制完成多种功能的计算,不同功能下生成的 scf.h5 文件会写入对应功能的数据,具体可分为以下情况:
(1) 通过设置 io.optical = true
在自洽计算的基础上计算线性光学性质:
(2) 通过设置 io.bader = true
在自洽计算的基础上计算bader电荷:
(3) 通过设置 io.polarization = true
在自洽计算的基础上进行铁电计算:
(4) 通过设置 sys.fixedP = true
在自洽计算中进行固定电势计算:
其中 ChemicalPotential_e 为体系电子化学势值; EBulk 取值为“隐式溶剂模型下费米能级shift值*-1”; ElectrodePotential 给出不同标定标准下的电势值; GrandTotalEnergy0 给出电子巨正则系综下的体系总能。
fixedPPotential 标签下展开为电子迭代过程中各重要参数的信息汇总。
- (5) 通过设置
io.band = true
、io.dos = true
、io.potential = true
、io.elf = true
, 在自洽计算的基础上进行能带计算、态密度计算、势函数计算、电子局域密度计算:
6.3 rho.h5
rho.h5 为各task下的电荷密度输出文件。
rho.h5 包含2个结构体:
其中 AtomInfo 与 relax.h5 文件的 AtomInfo 结构一致,Rho 中保存电荷密度数据:
6.4 rhoBound.h5
rhoBound.h5 为溶剂化模型下的溶剂束缚电荷密度输出文件。
rhoBound.h5 包含2个结构体:
其中 AtomInfo 与 relax.h5 文件的 AtomInfo 结构基本一致,Rho 中保存溶剂束缚电荷密度数据:
6.5 band.h5
band.h5 为各task = band下的输出文件,当 task类型为其他时,该文件不输出。
band.h5 至少包含3个结构体:
其中 AtomInfo 、 Structures 与 relax.h5 文件相对应的结构体结构一致, BandInfo 中保存能带数据:
能带去折叠计算对应的 band.h5 至少包含4个结构体:
其中 AtomInfo 、 Structures 与 relax.h5 文件相对应的结构体结构一致, BandInfo 中保存能带数据, UnfoldingBandInfo 中保存能带反折叠数据:
6.6 dos.h5
dos.h5 为 task = dos 下的输出文件,当 task类型为其他时,该文件不输出。
dos.h5 至少包含3个结构体:
其中 AtomInfo 、 Structures 与 relax.h5 文件相对应的结构体结构一致, DosInfo 中保存态密度数据:
6.7 potential.h5
potential.h5 为 task = potential 下的输出文件,当 task类型为其他时,该文件不输出。
potential.h5 至少包含3个结构体:
其中 Potential 中保存势函数数据:
6.8 elf.h5
elf.h5 为 task = elf 下的输出文件,当 task类型为其他时,该文件不输出。
elf.h5 至少包含3个结构体:
其中 elf 中保存局域密度数据:
6.9 pcharge.h5
pcharge.h5 为 task = pcharge 下的输出文件,当 task类型为其他时,该文件不输出。
pcharge.h5 包含2个结构体:
其中 Pcharge 中保存部分电荷密度数据:
6.10 optical.h5
optical.h5 为 task = optical下的输出文件,当 task类型为其他时,该文件不输出。
optical.h5 包含4个结构体:
(1)其中 AtomInfo 中保存体系的基本结构信息,如晶胞大小,原子位置等:
(2) opticalInfo 中保存光学计算各种性质的数据信息:
(3) Structures 中保存光学计算的结构信息:
(4) WaveDerivate 中保存波函数对k点的导数数组,大小为:(实部,虚部)*NumberOfBand*优选后band数目*NumberOfKPoints*NumberOfSpin*(x,y,z); DerivativeIndex 给出导数数组的维度; DerivativeValue 给出导数数组的值。
6.11 frequency.h5
frequency.h5 为 task = frequency下的输出文件,当 task类型为其他时,该文件不输出。
在考虑自旋的情况下 frequency.h5 包含4个结构体:
其中 FrequencyInfo 中保存频率数据:
6.12 elastic.h5
elastic.h5 为 task = elastic 下的输出文件,当 task类型为其他时,该文件不输出。
在考虑自旋的情况下 elastic.h5 包含4个结构体:
其中 ElasticInfo 中保存弹性数据:
6.13 neb.h5
neb.h5 为 task = neb 时,外层目录的输出文件。
neb.h5 包含5个结构体:
其中 BarrierInfo 中保存最大受力、反应坐标(各image和初态 00 结构间的反应距离)、最大剪切力、总能数据:
其中 IniFin 中保存计算初末态的开关:
其中 LoopInfo 中保存neb优化过程中每个image的能量与受力变化情况:
其中 RelaxedStructure 中保存各image优化结束的结构数据:
其中 UnrelaxStructure 中保存各image优化之前的结构数据:
6.14 neb01.h5
neb01.h5 为 task = neb 时,01子文件夹下的输出文件,同理02文件夹下会生成 neb02.h5 文件。
在不考虑自旋的情况下 neb01.h5 包含12个结构体:
其中 AtomInfo 、 Eigenvalue 、 Electron 、 Energy、 Force、 Stress 、 Structures 与 relax.h5 文件相对应的结构体结构一致;
其中 Distance 中保存 image 1 在优化过程中反应原子距离前后 image 的距离变化数据;
其中 MaxForce 中保存 image 1 在优化过程中最大受力数据;
其中 NebSize 中保存过渡态计算最大步数;
其中 Tangent 中保存 image 1 在优化过程中剪切力变化数据;
其中 TotalEnergy 中保存 image 1 在优化过程中总能变化数据;
6.15 phonon.h5
phonon.h5 为 task = phonon 下的输出文件,当 task类型为其他时,该文件不输出。
(1) 当 phonon.method = dfpt
时,phonon.f5文件如下所示:
dfpt方法计算声子能带和态密度,打开介电常数、声子热力学计算的开关, phonon.h5 包含9个结构体:
其中 BandInfo 、 DosInfo 分别保存能态和态密度数据,其结构分别与 band.h5 、 dos.h5 文件相对应的结构体结构一致;
其中 EpsilonInfo 中保存介电常数数据:
其中 ForceConstant 中保存力学常数数据:
其中 PrimitiveAtomInfo 、 SupercellAtomInfo 、 unitAtomInfo 分别保存原胞、超胞、单胞的结构信息,以单胞为例结构如下:
其中 ThermalInfo 中保存声子热力学数据:
其中 Phonon 中保存声子计算输入参数数据:
(2) 当 phonon.method = fd
时,phonon.f5文件如下所示:
有限位移法计算声子能带和态密度, phonon.h5 包含9个结构体:
其中 BandInfo 、 DosInfo 分别保存能态和态密度数据,其结构分别与 band.h5 、 dos.h5 文件相对应的结构体结构一致;
其中 ForceConstant 中保存力学常数数据, PrimitiveAtomInfo 、 SupercellAtomInfo 、 unitAtomInfo 分别
保存原胞、超胞、单胞的结构信息,其结构与 phonon.method = dfpt
时生成的phonon.f5文件相对应的结构体结构一致;
其中 ForceSet 保存各结构计算所得的力学矩阵数据:
其中 Phonon 中保存声子计算输入参数数据:
6.16 phonon001.h5
task = phonon,phonon.method = fd 时, 001子文件下会输出文件 phonon.h5,可将此类 h5文件重命名为 phonon001.h5, 同理002文件夹下也会生成 phonon.h5 文件。
在考虑自旋的情况下 phonon001.h5 包含7个结构体,结构如下:
6.17 aimd.h5
aimd.h5 为 task = aimd 下的输出文件,当 task类型为其他时,该文件不输出。
在考虑自旋的情况下 aimd.h5 包含9个结构体:
其中基本结构体信息与 relax.h5 一致;
其中新结构体 AimdInfo 包含n个结构体,每个结构体保存某个离子步下体系的状态信息,如温度、压力、能量、动能等:
6.18 epsilon.h5
epsilon.h5 为 task = epsilon 下的输出文件,当 task类型为其他时,该文件不输出。
在考虑自旋的情况下 epsilon.h5 包含4个结构体:
其中 EpsilonInfo 中保存介电常数数据:
6.19 wannier.h5
wannier.h5 为 task = wannier 下的输出文件,当 task类型为其他时,该文件不输出。
在不考虑自旋的情况下,计算插值能带所得的 wannier.h5 包含9个结构体:
其中 WannBandInfo 中保存插值能带数据,可用于绘制能带图:
其中 WannInfo 中保存wannier函数拟合数据,包括k网格点和初始投影信息等:
其中 WannInfo 的 spin1 下保存wannier函数拟合数据,包括计算所得的哈密顿量等数据: